package config

import (
	"encoding/json"
	"fmt"
	"os"
)

// Config 用于存储配置参数
type Config struct {
	ControlCenterIP   string `json:"control_center_ip"`
	ControlCenterPort string `json:"control_center_port"`
	LogLevel          string `json:"log_level"`
	Port              string `json:"port"`
	SecretKey         string `json:"secret_key"`
	SecretID          string `json:"secret_id"`
	Vendor            string `json:"vendor"`
	//UserName          string `json:"user_name"`
	//Passwd            string `json:"passwd"`
}

// LoadConfig 加载配置文件
func LoadConfig(filename string) (*Config, error) {
	data, err := os.ReadFile(filename)
	if err != nil {
		return nil, fmt.Errorf("error reading config file: %v", err)
	}

	var cfg Config
	if err := json.Unmarshal(data, &cfg); err != nil {
		return nil, fmt.Errorf("error parsing config file: %v", err)
	}

	return &cfg, nil
}
